import {NgModule} from '@angular/core';
import {BrowserModule} from '@angular/platform-browser';

import {AppRoutingModule} from './app-routing.module';
import {AppComponent} from './app.component';
import {BrowserAnimationsModule} from '@angular/platform-browser/animations';

import {FormsModule, ReactiveFormsModule} from "@angular/forms";
import {PersonalComponent} from './pages/user/personal/personal.component';
import {AuthGuard} from "./@core/guards/AuthGuard";
import {HttpClientModule} from "@angular/common/http";
import {NotFindComponent} from './pages/not-find/not-find.component';
import {NzLayoutModule} from "ng-zorro-antd/layout";
import {NzMenuModule} from "ng-zorro-antd/menu";
import {NzIconModule} from "ng-zorro-antd/icon";
import {NzBreadCrumbModule} from "ng-zorro-antd/breadcrumb";
import {NzDropDownModule} from "ng-zorro-antd/dropdown";
import {NzNotificationService} from "ng-zorro-antd/notification";
import {NzAvatarModule} from "ng-zorro-antd/avatar";
import {NzGridModule} from "ng-zorro-antd/grid";
import {NzInputModule} from "ng-zorro-antd/input";
import {NzProgressModule} from "ng-zorro-antd/progress";
import {NzTagModule} from "ng-zorro-antd/tag";
import {NzButtonModule} from "ng-zorro-antd/button";
import {UserinfoComponent} from './pages/user/userinfo/userinfo.component';
import {SettingComponent} from './pages/user/setting/setting.component';
import {NzUploadModule} from "ng-zorro-antd/upload";
import {NzListModule} from "ng-zorro-antd/list";
import {NzFormModule} from "ng-zorro-antd/form";
import {NzCheckboxModule} from "ng-zorro-antd/checkbox";
import {LoginComponent} from "@/app/pages/user/login/login.component";
import {NzTabsModule} from "ng-zorro-antd/tabs";
import {NzAlertModule} from "ng-zorro-antd/alert";
import {RegisterComponent} from "@/app/pages/user/register/register.component";
import {NzSelectModule} from "ng-zorro-antd/select";
import {NzPopoverModule} from "ng-zorro-antd/popover";
import {NzResultModule} from "ng-zorro-antd/result";
import {RegisterSuccessComponent} from "@/app/pages/user/register/register-success.component";
import {NzCarouselModule} from "ng-zorro-antd/carousel";
import {NzImageModule} from "ng-zorro-antd/image";
import {NzPageHeaderModule} from "ng-zorro-antd/page-header";
import {NzSpinModule} from "ng-zorro-antd/spin";
import {NzTableModule} from "ng-zorro-antd/table";
import {NzTypographyModule} from "ng-zorro-antd/typography";
import { FavoriteComponent } from './pages/user/favorite/favorite.component';
import {NzTreeViewModule} from "ng-zorro-antd/tree-view";
import {NzSwitchModule} from "ng-zorro-antd/switch";
import {NzCardModule} from "ng-zorro-antd/card";
import {UserGroupCard} from "@/app/pages/user/setting/user-group/UserGroupCard";
import {BBYCommonModule} from "@/app/pages/common/bby.common.module";
import {DiskModule} from "@/app/pages/disk/disk.module";
import {SearchUserCard} from "@/app/pages/user/setting/search-user/search-user-card";
import {NzRadioModule} from "ng-zorro-antd/radio";
import { PmMessageComponent } from './pages/user/pm-req/pm-message.component';
import {NzBadgeModule} from "ng-zorro-antd/badge";
import {NzModalModule} from "ng-zorro-antd/modal";
import {PmMessageDealDialog} from "@/app/pages/user/pm-req/deal-dialog/pm-message-deal.dialog";
import {NzPipesModule} from "ng-zorro-antd/pipes";
import {AddUserToGroup} from "@/app/pages/user/pm-req/add-user-to-group";
import {NzDatePickerModule} from "ng-zorro-antd/date-picker";
import zh from '@angular/common/locales/zh';
import {registerLocaleData} from "@angular/common";
registerLocaleData(zh);
@NgModule({
  declarations: [
    AppComponent,
    LoginComponent,
    RegisterComponent,
    RegisterSuccessComponent,
    PersonalComponent,
    NotFindComponent,
    UserinfoComponent,
    SettingComponent,
    FavoriteComponent,
    UserGroupCard,
    SearchUserCard,
    PmMessageComponent,
    AddUserToGroup,
    PmMessageDealDialog
  ],
    imports: [
        BrowserModule,
        AppRoutingModule,
        BrowserAnimationsModule,
        FormsModule,
        HttpClientModule,
        ReactiveFormsModule,
        NzLayoutModule,
        NzMenuModule,
        NzIconModule,
        NzBreadCrumbModule,
        NzDropDownModule,
        NzAvatarModule,
        NzGridModule,
        NzInputModule,
        NzProgressModule,
        NzTagModule,
        NzButtonModule,
        NzUploadModule,
        NzListModule,
        NzFormModule,
        NzCheckboxModule,
        NzTabsModule,
        NzAlertModule,
        NzSelectModule,
        NzPopoverModule,
        NzResultModule,
        NzCarouselModule,
        NzImageModule,
        NzPageHeaderModule,
        NzSpinModule,
        NzTableModule,
        NzTypographyModule,
        NzTreeViewModule,
        NzSwitchModule,
        NzCardModule,
        BBYCommonModule,
        DiskModule,
        NzRadioModule,
        NzBadgeModule,
        NzModalModule,
        NzPipesModule,
        NzDatePickerModule
    ],
  providers: [
    AuthGuard, NzNotificationService//,MyDiskGuard
    // {provide:LocationStrategy,useClass:HashLocationStrategy}
  ],
  exports: [],
  bootstrap: [AppComponent]
})
export class AppModule {
}
